<!DOCTYPE html >
<html>
<head>
    <script src="../libraries/RGraph.common.core.js" ></script>
    <script src="../libraries/RGraph.common.dynamic.js" ></script>
    <script src="../libraries/RGraph.bar.js" ></script>
    
    <title>RGraph demo: A bar chart with horizontal gradients</title>
    
    <link rel="stylesheet" href="demos.css" type="text/css" media="screen" />
    
    <meta name="robots" content="noindex,nofollow" />
    <meta name="description" content="A regular Bar chart but with horizontal gradients that are tailored to each individual bar" />
    
</head>
<body>

    <!-- Share buttons -->
    <p style="float: right">
        <script>
            document.write('<a href="" target="_blank" onclick="window.open(\'https://www.facebook.com/sharer/sharer.php?u=http://www.rgraph.net' + location.pathname + '\', null, \'top=50,left=50,width=600,height=368\'); return false"><img src="../images/facebook-large.png" width="200" height="43" alt="Share on Facebook" border="0" title="Visit the RGraph Facebook page" id="facebook_link" /></a>&nbsp;');
            document.write('<a href="https://twitter.com/_rgraph" target="_blank" onclick="window.open(\'https://twitter.com/intent/tweet?text=Check%20out%20this%20demo%20of%20RGraph:%202D/3D%20JavaScript%20charts%20-%20Free%20and%20Open%20Source%20http://www.rgraph.net' + location.pathname + '\', null, \'top=50,left=50,width=700,height=400\'); return false"><img src="../images/twitter-large.png" width="200" height="43" alt="Share on Twitter" border="0" title="Mention RGraph on Twitter" id="twitter_link" /></a>');
        </script>
    </p>


    <h1>A bar chart with horizontal gradients</h1>
    
    <p>
        This bar chart draws the chart then uses the coordinates of the bars to create gradients (each is specific to a bar),
        changes the colors to the gradients and finally redraws the chart.
    </p>

    <canvas id="cvs" width="600" height="250">[No canvas support]</canvas>
    <script>
        window.onload = function ()
        {
            var bar = new RGraph.Bar({
                id: 'cvs',
                data: [4,8,5,3,4,6,8],
                options: {
                    labels: ['Mon','Tue','Wed','Thu','Fri','Sat','Sun'],
                    colorsSequential: true,
                    shadowColor: '#999',
                    shadow: true,
                    shadowOffsetx: 0,
                    shadowOffsety: 0,
                    shadowBlur: 15,
                    strokestyle: 'rgba(0,0,0,0)',
                    backgroundGridAutofitNumvlines: 7,
                    noyaxis: true,
                    textAccessible: true
                }
            }).draw()


            /**
            * Now the chart has been drawn use the coords to create some appropriate gradients
            */
            var colors = [];

            for(var i=0; i<bar.coords.length; ++i) {
                // Because it's a horizontal gradient the Y coords don't matter
                var x1 = bar.coords[i][0];
                var y1 = 0;
                var x2 = bar.coords[i][0] + bar.coords[i][2];
                var y2 = 0;
                
                colors[i] = RGraph.linearGradient(bar, x1, y1, x2, y2, '#c00','red');
            }
    
            bar.set('colors', colors);
            RGraph.clear(bar.canvas);
            RGraph.redraw();
        };
    </script>




    <p></p>

    This goes in the documents header:
    <pre class="code">
&lt;script src="RGraph.common.core.js"&gt;&lt;/script&gt;
&lt;script src="RGraph.common.dynamic.js"&gt;&lt;/script&gt;
&lt;script src="RGraph.bar.js"&gt;&lt;/script&gt;
</pre>
    
    Put this where you want the chart to show up:
    <pre class="code">
&lt;canvas id="cvs" width="600" height="250"&gt;
    [No canvas support]
&lt;/canvas&gt;
</pre>

    This is the code that generates the chart:
    <pre class="code">
&lt;script&gt;
    window.onload = function ()
    {
        var bar = new RGraph.Bar({
            id: 'cvs',
            data: [4,8,5,3,4,6,8],
            options: {
                labels: ['Mon','Tue','Wed','Thu','Fri','Sat','Sun'],
                colorsSequential: true,
                shadow: true,
                shadowColor: '#999',
                shadowOffsetx: 0,
                shadowOffsety: 0,
                shadowBlur: 15,
                strokestyle: 'rgba(0,0,0,0)',
                backgroundGridAutofitNumvlines: 7,
                noyaxis: true,
                textAccessible: true
            }
        }).draw()


        <span>/**
        * Now the chart has been drawn use the coords to create some appropriate gradients
        */</span>
        var colors = [];

        for(var i=0; i&lt;bar.coords.length; ++i) {
            // Because it's a horizontal gradient the Y coords don't matter
            var x1 = bar.coords[i][0];
            var y1 = 0;
            var x2 = bar.coords[i][0] + bar.coords[i][2];
            var y2 = 0;
            
            colors[i] = RGraph.linearGradient(bar, x1, y1, x2, y2, '#c00','red');
        }

        bar.set('colors', colors);
        RGraph.clear(bar.canvas);
        RGraph.redraw();
    };
&lt;/script&gt;
</pre>



    
    <p>
        <a href="./">&laquo; Back</a>
    </p>

</body>
</html>